.TH GML2GV,GV2GML 1 "24 June 2011"
.SH NAME
gml2gv,gv2gml \- GML-DOT converters
.SH SYNOPSIS
.B gml2gv
[
.B \-?v
]
[
.BI \-g gname
]
[
.BI \-o outfile
]
[ 
.I files
]
.br
.B gv2gml
[
.B \-?
]
[
.BI \-o outfile
]
[ 
.I files
]

.SH DESCRIPTION
.B gml2gv
converts a graph specified in the GML format to a graph in the GV (formerly DOT) format. 
.B gv2gml
converts a graph specified in the GV format to a graph in the GML format.
.SH OPTIONS
The following options are supported:
.TP
.B \-v
Turns on verbose mode
.TP
.B \-?
Prints usage information and exits.
.TP
.BI \-g "gname"
The string \fIgname\fP is used as the name of the generated graph.
If multiple graphs are generated, subsequent graphs use the name
\fIgname\fP appended with an integer.
.TP
.BI \-o "outfile"
Prints output to the file \fIoutfile\fP. If not given, \fBgml2gv\fP
uses stdout.
.TP
.SH OPERANDS
The following operand is supported:
.TP 8
.I files
Names of files containing 1 or more graphs in GML.
If no
.I files
operand is specified,
the standard input will be used.
.SH RETURN CODES
Return \fB0\fP
if there were no problems during conversion;
and non-zero if any error occurred.
.SH "LIMITATIONS"
As both the graph and graphics models of GV and GML differ significantly, the
conversion is at best approximate. In particular, it is not clear how multiedges
are differentiated in GML, so multiedges are created in GV with no user-available
key. Also, no attribute information is lost, in that
any GML attributes that aren't converted to GV equivalents are retained as
attributes in the output graph.
.P
At present, 
.B gv2gml
does not support subgraphs and clusters. In addition, there does not appear to be
a standard mechanism for specifying default node and edge attributes in GML, so
any attributes are repeated for every node and edge.
.SH AUTHORS
Emden R. Gansner <erg@research.att.com>
.SH "SEE ALSO"
dot(1), libcgraph(3)
